import request from '@/utils/request' 

export function getInfo(token) {
  return request({
    url: '/vue-admin-template/user/info',
    method: 'get',
    params: { token }
  })
}

export function logout() {
  return request({
    url: '/logout',
    method: 'post'
  })
}

/**
 * 刷新验证码
 * 
 * 本函数通过发送GET请求到'/code'端点来刷新验证码
 * 它没有参数，并且在成功时返回一个新的验证码数据
 */
export function fetchRefreshCode() {
  // 发送GET请求以获取新的验证码数据
  return request({
    url: '/code',
    method: 'get'
  }).then(res => res.data)
}

/**
 * 登录函数
 * 
 * 该函数用于发起登录请求，它采用POST方法提交登录信息到服务器，并期望得到登录结果
 * 使用`text/html;charset=utf-8`作为Content-Type头，以适应特定的服务器端处理要求
 * 
 * @param {Object} params - 查询参数对象，用于在URL中附加额外的查询参数
 * @param {Object} data - 请求体数据对象，包含登录所需的用户名和密码等信息
 * @returns {Promise} - 返回一个Promise对象，该对象解析为服务器返回的登录结果数据
 */
export function login(params, data) {
  return request({
    url: `/login`,
    method: 'post',
    headers: {
      'Content-Type': 'text/html;charset=utf-8'
    },
    params,
    data
  }).then(res=>res.data)
}
